package util;

import java.util.ArrayList;
import java.util.List;

/**
 * 关于java.lang.String即字符串操作的通用方法的通用类
 * 
 * @author wu199406
 *
 */
public class WuStringUtil 
{	
	
	/**
	 * 去除某一字符串结尾的任意个数的字符
	 * 当结尾没有对应的字符时，直接返回
	 * 会自动去除结尾的空字符
	 * 当要去除的字符数i大于实际的结尾处的对应的字符数时，只会去除有的字符
	 * 
	 * @param str	要去除字符的字符串
	 * @param s		要去除的字符
	 * @param i		要去除的字符个数，默认为一
	 * @return
	 */
	public static String removeChar(String str,String s,int i)
	{	
		//System.out.println("去除前："+str);
		i = (i > 0)?i:1;
		int lenght = str.length();
		for(;i > 0;)
		{	
			//判断结尾是否有s字符
			if( str.lastIndexOf(s) == (lenght-1) )
			{	
				str = str.substring(0, lenght-2);
				i--;
			}
			//如果结尾处有空字符就去除它
			else if(str.lastIndexOf(" ") == (lenght-1))
			{
				str = str.substring(0, lenght-2);
			}
			//如果结尾处没有s和" "字符就结束
			else
			{
				break;
			}
		}
		//System.out.println("去除后："+str);
		return str;
	}
	
	
	/**
	 * 用于判断字符串是否为空或空字符串
	 * @return 非空,true;空,false.
	 */
	public static boolean isNullOfSring(String str)
	{
		if( str != null && str != "" && str == " " && str == "null")
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	
	
	/**
	 * 用于将字符串数组转换为字符串集合（list类型）
	 * @param array 要转换的字符串数组
	 * @return      转换后的字符串集合
	 */
	public static List<String> arrayToListOfString(String[] array)
	{
		List<String> list = new ArrayList<String>();
		
		if(array !=null && array.length>0)
		{
			//获取输入的字符串数组的长度
			int length = array.length;
			
			for(int i=0;i<length;i++)
			{
				list.add(array[i]);
			}
		}
		
		return list;
	}
}
